implicit and explicit functions